﻿using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Control.conexion;

namespace Control.clases
{
    public class clsTipoEquipo
    {
        private int idTipo;
        private int tipoDescripcion;

        public System.Data.DataTable listarTipoEquipo()
        {
            clsConexion oDataBase = new clsConexion();
            try
            {
                DbCommand cmd = oDataBase.CargarComandoSP("USP_S_LISTAR_TB_TIPO_PC");
                return oDataBase.EjecutarConsulta(cmd);
            }
            catch (Exception ex)
            {
                throw new System.Exception(ex.Message, ex.InnerException);
            }
        }

        public System.Data.DataTable buscarTipoEquipo(int _IdTipoPC)
        {
            clsConexion oDataBase = new clsConexion();
            try
            {
                DbCommand cmd = oDataBase.CargarComandoSP("USP_S_BUSCAR_TB_TIPO_PC");
                oDataBase.AddParametro(cmd, "@id_tipo_pc", _IdTipoPC);

                return oDataBase.EjecutarConsulta(cmd);
            }
            catch (Exception ex)
            {
                throw new System.Exception(ex.Message, ex.InnerException);
            }
        }

        public int agregarTipoEquipo(string _Descripcion)
        {
            try
            {
                clsConexion oDataBase = new clsConexion();
                int iReturn;
                DbCommand cmd = oDataBase.CargarComandoSP("USP_I_INSERTAR_TB_TIPO_PC"); // insertar SP_INSERTAR

                // Ingresar parametros
                oDataBase.AddParametro(cmd, "@tipo_pc_descripcion", _Descripcion);

                iReturn = oDataBase.EjecutarTransaccion(cmd);
                return iReturn;
            }
            catch (Exception ex)
            {
                throw new System.Exception(ex.Message, ex.InnerException);
            }
        }

        public int eliminarTipoEquipo(int _IdTipoPC)
        {
            try
            {
                clsConexion oDataBase = new clsConexion();
                int iReturn;
                DbCommand cmd = oDataBase.CargarComandoSP("USP_D_ELIMINAR_TB_TIPO_PC"); // insertar SP_INSERTAR

                // Ingresar parametros
                oDataBase.AddParametro(cmd, "@id_tipo_pc", _IdTipoPC);

                iReturn = oDataBase.EjecutarTransaccion(cmd);
                return iReturn;
            }
            catch (Exception ex)
            {
                throw new System.Exception(ex.Message, ex.InnerException);
            }
        }

        public int actualizarTipoEquipo(int _IdTipoPC, string _Descripcion)
        {
            try
            {
                clsConexion oDataBase = new clsConexion();
                int iReturn;
                DbCommand cmd = oDataBase.CargarComandoSP("USP_U_ACTUALIZAR_TB_TIPO_PC"); // insertar SP_INSERTAR

                // Ingresar parametros
                oDataBase.AddParametro(cmd, "@id_tipo_pc", _IdTipoPC);
                oDataBase.AddParametro(cmd, "@tipo_pc_descripcion", _Descripcion);

                iReturn = oDataBase.EjecutarTransaccion(cmd);
                return iReturn;
            }
            catch (Exception ex)
            {
                throw new System.Exception(ex.Message, ex.InnerException);
            }
        }
    }
}
